package com.yxw.yxnet_cd_center.customer_service.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 客户运营DTO类
 *
 * @author xiexuxin
 * @date 2023-09-24
 */
@EqualsAndHashCode(callSuper = false)
@Data
@ToString(callSuper=true)
@ApiModel(value="CustomOperateDTO", description="客户运营新增修改")
public class CustomOperateDTO implements Serializable {
    private static final long serialVersionUID = 1L;

    /** 运营项目名称 */
    @ApiModelProperty("运营项目名称")
    private String projectName;

    /** 渠道 */
    @ApiModelProperty("渠道")
    private Long channelType;

    /** 选择客户方式 */
    @ApiModelProperty("选择客户方式")
    private Long chooseType;

    /** 运营方式 */
    @ApiModelProperty("运营方式")
    private Long operateMode;

    /** 客户 */
    @ApiModelProperty("客户")
    private List<Long> custIds;

    /** 商品 */
    @ApiModelProperty("商品")
    private List<Long> productIds;

    /** 标签 */
    @ApiModelProperty("标签")
    private List<Long> tagIds;

    /** 推送内容 */
    @ApiModelProperty("推送内容")
    private String pushContent;

    /** 推送方式 */
    @ApiModelProperty("推送方式")
    private Long pushMode;

    /** 有效期始 */
    @ApiModelProperty("有效期始")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date effTimeStart;

    /** 有效期止 */
    @ApiModelProperty("有效期止")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date effTimeEnd;

    /** 定时发送时间 */
    @ApiModelProperty("定时发送时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date pushTime;
}
